<?php

namespace App\Http\Model\CoolNumberShoppingMall;

use App\Http\Model\Base;

/**
 * 靓号-用户使用记录
 *
 * Created on 2021/12/6 13:59
 * @Author <yuxiang.zhu@asiainnovations.net>
 */
class UserUseLog extends Base
{
    // change_mode
    const CHANGE_AUTO = 0;// 自动变更
    const CHANGE_BY_ADMINISTRATOR = 1;// 被管理员更改

    /**
     * 表名字
     *
     * @var string
     */
    protected $table = 'cool_number_user_use_log';

    /**
     * 指示模型是否自动维护时间戳
     *
     * @var bool
     */
    public $timestamps = true;

    /**
     * 模型日期列的存储格式。
     *
     * @var string
     */
    protected $dateFormat = 'U';

    /**
     * 可以被批量赋值的属性。
     *
     * @var array
     */
    protected $fillable = ['id', 'old_uuid', 'new_uuid', 'user_id', 'operator_user_id', 'operator_user', 'expiry_time', 'change_mode', 'created_at', 'updated_at'];

    /**
     * @param array $attributes
     */
    public function __construct(array $attributes = [])
    {
        parent::__construct($this->table, $attributes);
    }

    /**
     * Created at 2021/12/24 12:04
     * @Author <yuxiang.zhu@asiainnovations.net>
     * @param string $uuid
     * @return mixed
     */
    public function getLastUseLogByUuid(string $uuid)
    {
        return $this->objToArray(self::query()->select(['id', 'user_id'])
            ->whereRaw('new_uuid="' . $uuid . '" and expiry_time>0 and expiry_time<=' . time())->orderByDesc('id')
            ->first());
    }
}